let myMap = new Map();

let keyObj = {};
let keyFunc = function() {};
let keyString = 'a string';

// 添加键
myMap.set(keyString, "和键'a string'关联的值");
myMap.set(keyObj, "和键keyObj关联的值");
myMap.set(keyFunc, "和键keyFunc关联的值");


myMap.size; // 3

// 读取值
myMap.get(keyString); // "和键'a string'关联的值"
// console.log(myMap.get(keyString));
myMap.get(keyObj); // "和键keyObj关联的值"
myMap.get(keyFunc); // "和键keyFunc关联的值"

myMap.get('a string'); // "和键'a string'关联的值"
// 因为keyString === 'a string'
myMap.get({}); // undefined, 因为keyObj !== {}
myMap.get(function() {}); // undefined, 因为keyFunc !== function () {}
// console.log(keyFunc);
myMap.has(keyObj)
myMap.has("和键'a string'关联的值")
var testa
myMap.set(testa, 4)
    // has 测试的是有没有这个 key
console.log(myMap.has(testa), myMap.has(4))
console.log(myMap.get(testa))